package com.atguigu.common.to.es;

import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * @Author : Jungle
 * @Description :
 * <p>
 * {
 * "mappings": {
 * "properties": {
 * "skuId": {
 * "type": "long"
 * },
 * "spuId": {
 * "type": "keyword"
 * },
 * "skuTitle": {
 * "type": "text",
 * "analyzer": "ik_smart"
 * },
 * "skuPrice": {
 * "type": "keyword"
 * },
 * "skuImg": {
 * "type": "keyword",
 * "index": false,
 * "doc_values": false
 * },
 * "saleCount": {
 * "type": "long"
 * },
 * "hasStock": {
 * "type": "boolean"
 * },
 * "hotScore": {
 * "type": "long"
 * },
 * "brandId": {
 * "type": "long"
 * },
 * "catalogId": {
 * "type": "long"
 * },
 * "brandName": {
 * "type": "keyword",
 * "index": false,
 * "doc_values": false
 * },
 * "brandImg": {
 * "type": "keyword",
 * "index": false,
 * "doc_values": false
 * },
 * "catalogName": {
 * "type": "keyword",
 * "index": false,
 * "doc_values": false
 * },
 * "attrs": {
 * "type": "nested",
 * "properties": {
 * "attrId": {
 * "type": "long"
 * },
 * "attrName": {
 * "type": "keyword",
 * "index": false,
 * "doc_values": false
 * },
 * "attrValue": {
 * "type": "keyword"
 * }
 * }
 * }
 * }
 * }
 * }
 */
@Data
public class SkuEsModel {
    private Long skuId;
    private Long spuId;
    private String skuTitle;
    private BigDecimal skuPrice;
    private String skuImg;
    private Long saleCount;
    private Boolean hasStock;
    private Long hotScore;
    private Long brandId;
    private Long catalogId;
    private String brandName;
    private String brandImg;
    private String catalogName;
    private List<Attrs> attrs;

    //保证第三方工具能对其序列化操作，需要public
    @Data
    public static class Attrs {
        private Long attrId;
        private String attrName;
        private String attrValue;
    }
}
